package com.ruoyi.system.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 系统应用对象 sys_application
 * 
 * @author ruoyi
 * @date 2021-08-19
 */
public class SysApplication extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 应用编号 */
    private String appCode;

    /** 名称 */
    @Excel(name = "名称")
    private String appName;

    /** 类型（0平台内置系统 1社区系统 2养老院系统 3老年大学系统 4志愿者系统 5商城系统 6家政系统 100租户通用系统 ） */
    @Excel(name = "类型", readConverterExp = "0=平台内置系统,1=社区系统,2=养老院系统,3=老年大学系统,4=志愿者系统,5=商城系统,6=家政系统,100=租户通用系统")
    private String appType;

    /** 状态（0正常 1停用） */
    @Excel(name = "状态", readConverterExp = "0=正常,1=停用")
    private String status;

    /** 排序（升序） */
    @Excel(name = "排序", readConverterExp = "升=序")
    private Long sort;

    /** 是否免费（0是 1否） */
    @Excel(name = "是否免费", readConverterExp = "Y=是,N=否")
    private String isFree;

    /** 免费使用天数 */
    @Excel(name = "免费使用天数")
    private Integer freeDate;

    /**
     * 租户是否存在此子系统标识 默认不存在
     */
    private boolean flag = false;

    /** 删除标记（0代表存在 2代表删除） */
    private String delFlag;

    public void setAppCode(String appCode) 
    {
        this.appCode = appCode;
    }

    public String getAppCode() 
    {
        return appCode;
    }
    public void setAppName(String appName) 
    {
        this.appName = appName;
    }

    public String getAppName() 
    {
        return appName;
    }
    public void setAppType(String appType) 
    {
        this.appType = appType;
    }

    public String getAppType() 
    {
        return appType;
    }
    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }
    public void setSort(Long sort) 
    {
        this.sort = sort;
    }

    public String getIsFree() {
        return isFree;
    }

    public void setIsFree(String isFree) {
        this.isFree = isFree;
    }

    public Integer getFreeDate() {
        return freeDate;
    }

    public void setFreeDate(Integer freeDate) {
        this.freeDate = freeDate;
    }

    public Long getSort()
    {
        return sort;
    }
    public void setDelFlag(String delFlag) 
    {
        this.delFlag = delFlag;
    }

    public String getDelFlag() 
    {
        return delFlag;
    }

    public boolean isFlag() {
        return flag;
    }

    public void setFlag(boolean flag) {
        this.flag = flag;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("appCode", getAppCode())
            .append("appName", getAppName())
            .append("appType", getAppType())
            .append("status", getStatus())
            .append("sort", getSort())
            .append("delFlag", getDelFlag())
            .append("remark", getRemark())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}